test(nightly): gate on FFmpeg, and find libs in the multiarch dir - #1485
Merged
Conversation
…ip actions]
Two changes to the CachyOS nightly's dependency gate.
FFmpeg is now required. contrib/avcodec landed in 0.509.0 and its audio half in
0.513.0, and the contrib-check entry SKIPs when pkg-config cannot find the
FFmpeg libraries — so without a gate entry the nightly would report a green run
whose avcodec test never actually executed. That is the failure mode the gate
exists to prevent: a dedicated build box should test everything, and a missing
library is a provisioning bug, not a silent skip. Both libavcodec and
libswresample are listed, since 0.513.0 made all five FFmpeg libs a required
set.
have_dep's `lib` kind also now looks in /usr/lib/<arch>-linux-gnu. On Debian and
Ubuntu that is the ONLY place these libraries live — verified here, where
libavcodec.so exists in the multiarch dir and in none of the four paths the
matcher previously searched, so a Debian-shaped box would report every lib
dependency MISSING. Arch has no multiarch dir, so the extra path is a harmless
no-op on the box this script actually runs on.
Verified on both shapes rather than assumed:
Debian 12 (here): ffmpeg / ffmpeg-swr / sqlite / expat all "dep OK"
CachyOS (the box): same four "dep OK" — FFmpeg is already installed there,
so this turns the avcodec gate ON rather than red
[skip actions] is correct and bare: this touches tests/cachyos/ only — no
compiler, runtime, std or contrib code — and the nightly is self-run on its own
box rather than by GitHub Actions.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two changes to the CachyOS nightly's dependency gate. One file,
tests/cachyos/nightly.sh, four added lines.1. FFmpeg is now a required dependency
contrib/avcodeclanded in 0.509.0 and its audio half in 0.513.0. Itscontrib-checkentry SKIPs when pkg-config cannot find the FFmpeg libraries — so without a gate entry the nightly would report a green run whose avcodec test never actually executed.That is precisely the failure mode the gate exists to prevent: a dedicated build box should test everything, so an absent library is a provisioning bug rather than a silent skip. Both
libavcodecandlibswresampleare listed, since 0.513.0 made all five FFmpeg libs a required set.2.
have_dep'slibkind now searches the multiarch directoryOn Debian and Ubuntu,
/usr/lib/<arch>-linux-gnuis the only place these libraries live. Verified here:So a Debian-shaped box would have reported every
libdependency as MISSING. Arch has no multiarch dir, so the extra path is a harmless no-op on the box this script actually runs on.Verified on both shapes, not assumed
ffmpeg,ffmpeg-swr,sqlite,expat→ all dep OKWorth noting: FFmpeg is already installed on the CachyOS box, so this turns the avcodec gate on rather than turning the nightly red. The pre-existing
sqlite/expatentries still resolve on both, so the matcher change regresses nothing.On
[skip actions]Bare in the commit subject, deliberately not in the PR title (the title becomes the merge-commit subject and would no-op the release).
It is correct here in a way it was not in #1483: that branch carried the token on its head commit while shipping 244 lines of C, which silenced CI for the whole PR. This branch is
tests/cachyos/end to end — a single shell script, self-run on its own box rather than by GitHub Actions — so there is nothing for the matrix to exercise.🤖 Generated with Claude Code